package com.ekin.attendance.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ekin.attendance.model.entity.Leave;
import com.ekin.attendance.model.form.LeaveForm;
import com.ekin.attendance.model.query.LeavePageQuery;
import com.ekin.attendance.model.vo.LeavePageVO;

public interface LeaveService extends IService<Leave> {

    /**
     * 获取请假分页列表
     *
     * @param queryParams 分页查询对象
     * @return 请假分页列表
     */
    Page<LeavePageVO> getLeavePage(LeavePageQuery queryParams);

    boolean saveLeave(LeaveForm formData);

    LeaveForm getLeaveForm(Long id);

    boolean updateLeave(Long id, LeaveForm leaveForm);

    void deleteLeaves(String ids);
}
